package de.bloxel.world;

import com.jme3.math.Vector3f;

/**
 * A TerrainLoader create {@link TerrainElement}S, the created elements have the same size ({@link #getElementSize()})
 * 
 * TODO spaeter koennte man ueberlegen ob alle bloxel wirklich gleichgross sein muessen?!
 * 
 * @author andreas
 * @since 0.1.0
 */
public interface TerrainLoader {

  /**
   * @param theTerrainChunk
   *          to fill with {@link TerrainElement}S
   */
  void fill(final TerrainChunk theTerrainChunk);

  /**
   * @return the half-size of each {@link TerrainElement}, to get the full size of a {@link TerrainElement} you must
   *         multiply this value with 2, the returned size is from the center of the elements
   */
  Vector3f getElementSize();
}